57c43b2b66ff9c17a3ff99f8f7f1d2a8147381af,plsql-frontend/src/main/java/org/sonar/plsqlopen/squid/PlSqlAstScanner.java,PlSqlAstScanner,setMethodAnalyser,#AstScanner.Builder#,142
Before Change
PlSqlGrammar.PROCEDURE_DECLARATION,
PlSqlGrammar.FUNCTION_DECLARATION };
builder.withSquidAstVisitor(new SourceCodeBuilderVisitor<>(new SourceCodeBuilderCallback() {
@Override
public SourceCode createSourceCode(SourceCode parentSourceCode, AstNode astNode) {
String functionName = astNode.getFirstChild(PlSqlGrammar.UNIT_NAME, PlSqlGrammar.IDENTIFIER_NAME).getTokenValue();
SourceFunction function = new SourceFunction(functionName + ":" + astNode.getToken().getLine());
function.setStartAtLine(astNode.getTokenLine());
return function;
}
}, methodDeclarations));
builder.withSquidAstVisitor(CounterVisitor.<Grammar>builder()
.setMetricDef(PlSqlMetric.METHODS)
After Change
PlSqlGrammar.PROCEDURE_DECLARATION,
PlSqlGrammar.FUNCTION_DECLARATION };
builder.withSquidAstVisitor(new SourceCodeBuilderVisitor<>(
(parentSourceCode, astNode) -> {
String functionName = astNode.getFirstChild(PlSqlGrammar.UNIT_NAME, PlSqlGrammar.IDENTIFIER_NAME).getTokenValue();
SourceFunction function = new SourceFunction(functionName + ":" + astNode.getToken().getLine());
function.setStartAtLine(astNode.getTokenLine());
return function;
}, methodDeclarations));
builder.withSquidAstVisitor(CounterVisitor.<Grammar>builder()
.setMetricDef(PlSqlMetric.METHODS)